//
//  CSTableViewUtils.swift
//  Cycling
//
//  Created by CSS on 4/1/23.
//

import Foundation
import UIKit

extension UITableView {
    
    class func forAutoLayout(frame: CGRect = .zero, style: Style = .plain, hidden: Bool = false) -> UITableView {
        let tableView = UITableView(frame: frame, style: style)
        tableView.isHidden = hidden
        tableView.translatesAutoresizingMaskIntoConstraints = false
        
        if style == .plain {
            let tableFooterView = UIView()
            tableFooterView.backgroundColor = .clear
            tableView.tableFooterView = tableFooterView
        }
        
        return tableView
    }
    
    func registerDefaultNibCell(withClasss classes: [UITableViewCell.Type]) {
        classes.forEach({ $0.registerNib(forTableView: self) })
    }
    
    func registerDefaultNibCell(withSingleClass singleClass: UITableViewCell.Type) {
        singleClass.registerNib(forTableView: self)
    }
    
}
